/*
 *  Copyright 2002 by Texas Instruments Incorporated.
 *  All rights reserved. Property of Texas Instruments Incorporated.
 *  Restricted rights to use, duplicate or disclose this code are
 *  granted through contract.
 *  
 *  ======== tskVideoInput.h ======== 
 *
 *  Please refer to readme.txt in this file's directory for a 
 *  detailed description.
 *
 */

#ifndef TSKVIDEOINPUT_
#define TSKVIDEOINPUT_


// RF5 module includes
#include <chan.h>
#include <icell.h>

#ifdef __cplusplus
extern "C" {
#endif


// Enumeration of channel cells (so we use names intead of numbers for index)
enum { CELLBT835TOYUV= 0, 
       INPUTVIDEONUMCELLS 
};            
#define INPUTVIDEONUMCHANNELS 1

/* Definition of the structure describing the state of the thread. */
typedef struct ThrInput {
    CHAN_Obj        chanList[ INPUTVIDEONUMCHANNELS ];              
    ICELL_Obj       cellList[ INPUTVIDEONUMCHANNELS * INPUTVIDEONUMCELLS ];       
    void 		  *bufInput[ INPUTVIDEONUMCHANNELS ];
    void 		  *bufOutput[ INPUTVIDEONUMCHANNELS ];
    void            *bufIntermediate;
    ScomBufChannels  scomMsgRx;
    ScomBufChannels  scomMsgTx;
} ThrInput ; 

/* prototypes for public functions */
extern Void tskVideoInputInit( Void );
extern Void tskVideoInput( Void );
#ifdef __cplusplus
}
#endif // extern "C" 

#endif // TSKVIDEOINPUT_
